<?php

//function printUserForm($pseudo, $newPseudo, $login_poly, $nom, $prenom, $poste, $titrePoste, $descriptionPoste, $niveauPoste, $niveau, $caution)
function printUserForm($default)
{
    // Gestion du titre
    if (empty($default['pseudo'])) $titre = "Inscription" ;
    else $titre = "Modification de l'utilisateur \"{$default['pseudo']}\"." ;

    // Variable valant true si le formulaire est à afficher en version "longue" et false sinon
    $long = true ;
    if (empty($default['id'])) $long = false ;

?>
<div class="formUser">
    <form action="index.php?page=updateUser" method="post">
    <input type="hidden" name="pseudo" value="<?= $default['pseudo'] ?>"/>
    <input type="hidden" name="id" value="<?= $default['pseudo'] ?>"/> <!-- pour jQuery -->
<table class="form">
    <tr>
        <th colspan="2">
            <?= $titre ?>
        </th>
    </tr>
    <tr>
        <td class="label">
            <label for="pseudo">Pseudo</label>
        </td>
        <td class="champ">
            <input type="text" name="newPseudo" id="newPseudo" size="32" maxlength="32" value="<?= $default['newPseudo']?>"/>
        </td>
    </tr>
<?php
    if (!empty($default['pseudo']))
    {
?>
    <tr>
        <td class="label" colspan="2">
Si vous ne souhaitez pas modifier le mot de passe, laisser les champs suivants vides
        </td>
    </tr>
    <tr>
        <td class="label">
            <label for="yourPassword"><u>Votre</u> mot de passe actuel</label>
        </td>
        <td class="champ">
            <input type="password" name="yourPassword" size="8" maxlength="8" id="yourPassword"/>
        </td>
    </tr>
<?php } ?>
    <tr>
        <td class="label">
            <label for="password"><?php if (!empty($default['pseudo'])) echo "Nouveau mot de passe" ; else echo "Mode de passe" ; ?></label>
        </td>
        <td class="champ">
            <input type="password" name="password" size="8" maxlength="8" id="password"/>
        </td>
    </tr>
    <tr>
        <td class="label">
            <label for="password">Confirmation</label>
        </td>
        <td class="champ">
            <input type="password" name="password2" size="8" maxlength="8" id="password2"/>
        </td>
    </tr>
    <tr>
        <td class="label">
            <label for="login_poly">Login poly</label>
        </td>
        <td class="champ">
            <input type="text" name="login_poly" size="32" value="<?= $default['login_poly'] ?>"/>
        </td>
    </tr>
    <tr>
        <td class="label">
            <label for="nom">Nom</label>
        </td>
        <td class="champ">
            <input type="text" name="nom" id="nom" size="32" value="<?= $default['nom'] ?>"/>
        </td>
    </tr>
    <tr>
        <td class="label">
            <label for="prenom">Prénom</label>
        </td>
        <td class="champ">
            <input type="text" name="prenom" id="prenom" size="32" value="<?= $default['prenom'] ?>"/>
        </td>
    </tr>
    <tr>
        <td class="label">
            <label for="promo">Promo</label>
        </td>
        <td class="champ">
            <input type="text" name="promo" size="4" value="<?= $default['promo'] ?>"/>
        </td>
    </tr>

<?php    // Poste
    if (niveauOK(2))
    {
?>
        <tr>
            <td class="label">
                <label for="poste">Poste</label>
            </td>
            <td class="champ">
                <input type="text" name="poste" size="32" value="<?= $default['poste'] ?>"/>
            </td>
        </tr>
<?php
    }

    // Niveau
    if (niveauOK(2))
    {
        echo '<tr><td class="label"><label for="niveau">Niveau d\'autorisation</label></td>'.PHP_EOL;
        echo '<td class="champ"><select name="niveau" id="niveau">'.PHP_EOL ;
        for ($i=0 ; $i<$GLOBALS["nbNiveaux"] ; $i++)
        {
            $selected = "" ;
            if ($default['niveau'] == $i) $selected=" selected" ;
            echo '<option value="'.$i.'"'.$selected.'>'.$i.'</option>'.PHP_EOL;
        }
        echo '</select></td></tr>'.PHP_EOL;
    }

    // Chèque de caution
    /*$checked = "" ;
    if ($caution) $checked = " checked" ;
    if (niveauOK(2))*/
    if (niveauOK(2))
    {
?>
    <tr>
        <td class="label">
            <label for="caution">Date du chèque de caution</label><br/> (vide si pas de caution donnée)
        </td>
        <td class="champ">
            <input type="text" name="caution" id="caution" size="10" value="<?= $default['caution'] ?>"/>
        </td>
    </tr>
<?php
    }

?>
    <tr>
        <td class="valid" colspan="2">
            <input type="submit" value="Valider"/><input type="reset" value="Réinitialiser"/>
        </td>
    </tr>
</table>
    </form>
</div>
<?php
}


// Ajout d'un nouvel utilisateur
//function ajouterUser ($pseudo, $password, $login_poly, $nom, $prenom, $poste, $niveau, $caution)
function ajouterUser ($params)
{
    connect () ;
    $requete = "INSERT INTO `User` (`pseudo`, `password`, `login_poly`, `nom`, `prenom`, `promo`, `poste`, `niveau`, `caution`) VALUES " ;
    $requete .= "(\"{$params['pseudo']}\", \"{$params['password']}\", \"{$params['login_poly']}\", \"{$params['nom']}\", \"{$params['prenom']}\", \"{$params['promo']}\", \"{$params['poste']}\", \"{$params['niveau']}\", \"{$params['caution']}\") ;" ;
    $result = executerRequete($requete, $GLOBALS["debug"]) ;
    mysql_close() ;
    ajouterScript("executerTache(\"User\", \"ajout\", \"{$params['pseudo']}\");") ;
    return $result ;

}


// Modification d'un utilisateur
//function updateUser ($pseudo, $nouveauPseudo, $login_poly, $password, $nom, $prenom, $poste, $niveau, $caution)
function updateUser ($params)
{
    $requete = "UPDATE `User` SET "
             . " `pseudo` = \"{$params['newPseudo']}\"," ;
    if (!empty($params['password'])) $requete .= " `password` = \"{$params['password']}\"," ;
    $requete .= " `login_poly` = \"{$params['login_poly']}\", "
             . " `nom` = \"{$params['nom']}\", "
             . " `prenom` = \"{$params['prenom']}\", "
             . " `promo` = \"{$params['promo']}\", "
             . " `poste` = \"{$params['poste']}\", " 
             . " `niveau` = \"{$params['niveau']}\" "
             . ", `caution`= \"{$params['caution']}\" ";
    $requete .= " WHERE `pseudo` = \"{$params['pseudo']}\";" ;
    connect() ;
    $result = executerRequete($requete, $GLOBALS["debug"]) ;
    mysql_close() ;
    // Le pseudo ayant peut-être été mis à jour, il est transmis sous forme "ancien nouveau"
    // (séparés par un espace)
    ajouterScript("executerTache(\"User\", \"update\", \"{$params['pseudo']} {$params['newPseudo']}\");") ;
    return $result ;
}

// Suppression
function deleteUser ($pseudo, &$supprime)
{
    $requete = "DELETE FROM User WHERE pseudo=\"$pseudo\";" ;
    connect () ;
    $result = executerRequete($requete, $GLOBALS['debug']);
    $supprime = mysql_affected_rows() ;
    mysql_close() ;
    ajouterScript("executerTache(\"User\", \"delete\", \"{$pseudo}\");") ;
    return $result ;
}

?>
